<template>
    <div>
        <h2>当前求和为：{{$store.state.sum}}</h2>
        <select v-model.number="n">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
        </select>
        <button @click="increment">+</button>
        <button @click="decrement">-</button>
        <button @click="incrementIfOdd">当前求和为奇数再+</button>
        <button @click="incrementWait">等一等再+</button>
    </div>
</template>

<script>
    export default {
        name: 'Count',
        data() {
            return {
                n: 1
            }
        },
        methods: {
            //加
            increment() {
                //以后得编写一段代码，告诉vuex去+n
                // this.sum += this.n;
                this.$store.dispatch('increment', this.n)
            },
            //减
            decrement() {
                //以后得编写一段代码，告诉vuex去-n
                // this.sum -= this.n;
                console.log(1);
                this.$store.dispatch('decrement', this.n)
            },
            //奇数加
            incrementIfOdd() {
                //if(vuex中的sum % 2){
                //告诉vuex去+n
                //}

                if (this.$store.state.sum % 2) {
                    // this.sum += this.n
                    this.$store.commit('incrementIfOdd', this.n)
                }
            },
            //等等再加
            incrementWait() {
                setTimeout(() => {
                    //以后得编写一段代码，告诉vuex去+n
                    // this.sum += this.n
                    this.$store.commit('incrementWait', this.n)
                }, 500)
            },
        }
    }
</script>

<style>
    * {
        margin-left: 10px;
    }
</style>